package org.ala.shopping_test.user_center.repository.user.query;

import java.util.List;
import org.ala.shopping_test.user_center.repository.user.entity.UserSellerDO;
import java.util.ArrayList;
import java.io.Serializable;

/**
 *	Query (user_seller)
 *  卖家表
 *
 *	@author 骆毅 (ala)
 *	@date 2025-03-24 15:03:46
 */
public class UserSellerQuery extends UserSellerDO implements Serializable {
    /**
     *
     */
    private static final long serialVersionUID = 1L;

    /**
     *  卖家id
     */
    protected Long id;
    protected List<Long> idIn;
    protected Long idGt;
    protected Long idGte;
    protected Long idLt;
    protected Long idLte;
    /**
     *  卖家名称
     */
    protected String sellerName;
    protected List<String> sellerNameIn;
    protected String sellerNameXLike;
    protected String sellerNameXLeft;
    protected String sellerNameXRight;
    /**
     *  卖家评级
     */
    protected Integer sellerLevel;
    protected List<Integer> sellerLevelIn;
    protected Integer sellerLevelGt;
    protected Integer sellerLevelGte;
    protected Integer sellerLevelLt;
    protected Integer sellerLevelLte;
    /**
     *  记录创建时间
     */
    protected Long createTime;
    protected List<Long> createTimeIn;
    protected Long createTimeGt;
    protected Long createTimeGte;
    protected Long createTimeLt;
    protected Long createTimeLte;
    /**
     *  记录最后修改时间
     */
    protected Long modifyTime;
    protected List<Long> modifyTimeIn;
    protected Long modifyTimeGt;
    protected Long modifyTimeGte;
    protected Long modifyTimeLt;
    protected Long modifyTimeLte;


    public static UserSellerQuery build() {return new UserSellerQuery();}


    public Long getId() {return id;}
    public void setId(Long id) { this.id = id; }
    public UserSellerQuery id(Long id) { this.id = id; return this; }

    public List<Long> getIdIn() {return idIn;}
    public void setIdIn(List<Long> idIn) { this.idIn = idIn; }
    public UserSellerQuery idIn(List<Long> idIn) { this.idIn = idIn; return this; }
    public UserSellerQuery idAppend(Long id) { if (idIn == null) { idIn = new ArrayList<>(); } idIn.add(id); return this; }

    public Long getIdGt() {return idGt;}
    public void setIdGt(Long idGt) { this.idGt = idGt; }
    public UserSellerQuery idGt(Long idGt) { this.idGt = idGt; return this; }

    public Long getIdGte() {return idGte;}
    public void setIdGte(Long idGte) { this.idGte = idGte; }
    public UserSellerQuery idGte(Long idGte) { this.idGte = idGte; return this; }

    public Long getIdLt() {return idLt;}
    public void setIdLt(Long idLt) { this.idLt = idLt; }
    public UserSellerQuery idLt(Long idLt) { this.idLt = idLt; return this; }

    public Long getIdLte() {return idLte;}
    public void setIdLte(Long idLte) { this.idLte = idLte; }
    public UserSellerQuery idLte(Long idLte) { this.idLte = idLte; return this; }


    public String getSellerName() {return sellerName;}
    public void setSellerName(String sellerName) { this.sellerName = sellerName; }
    public UserSellerQuery sellerName(String sellerName) { this.sellerName = sellerName; return this; }

    public List<String> getSellerNameIn() {return sellerNameIn;}
    public void setSellerNameIn(List<String> sellerNameIn) { this.sellerNameIn = sellerNameIn; }
    public UserSellerQuery sellerNameIn(List<String> sellerNameIn) { this.sellerNameIn = sellerNameIn; return this; }
    public UserSellerQuery sellerNameAppend(String sellerName) { if (sellerNameIn == null) { sellerNameIn = new ArrayList<>(); } sellerNameIn.add(sellerName); return this; }

    public String getSellerNameXLike() {return sellerNameXLike;}
    public void setSellerNameXLike(String sellerNameXLike) { this.sellerNameXLike = sellerNameXLike; }
    public UserSellerQuery sellerNameXLike(String sellerNameXLike) { this.sellerNameXLike = sellerNameXLike; return this; }

    public String getSellerNameXLeft() {return sellerNameXLeft;}
    public void setSellerNameXLeft(String sellerNameXLeft) { this.sellerNameXLeft = sellerNameXLeft; }
    public UserSellerQuery sellerNameXLeft(String sellerNameXLeft) { this.sellerNameXLeft = sellerNameXLeft; return this; }

    public String getSellerNameXRight() {return sellerNameXRight;}
    public void setSellerNameXRight(String sellerNameXRight) { this.sellerNameXRight = sellerNameXRight; }
    public UserSellerQuery sellerNameXRight(String sellerNameXRight) { this.sellerNameXRight = sellerNameXRight; return this; }


    public Integer getSellerLevel() {return sellerLevel;}
    public void setSellerLevel(Integer sellerLevel) { this.sellerLevel = sellerLevel; }
    public UserSellerQuery sellerLevel(Integer sellerLevel) { this.sellerLevel = sellerLevel; return this; }

    public List<Integer> getSellerLevelIn() {return sellerLevelIn;}
    public void setSellerLevelIn(List<Integer> sellerLevelIn) { this.sellerLevelIn = sellerLevelIn; }
    public UserSellerQuery sellerLevelIn(List<Integer> sellerLevelIn) { this.sellerLevelIn = sellerLevelIn; return this; }
    public UserSellerQuery sellerLevelAppend(Integer sellerLevel) { if (sellerLevelIn == null) { sellerLevelIn = new ArrayList<>(); } sellerLevelIn.add(sellerLevel); return this; }

    public Integer getSellerLevelGt() {return sellerLevelGt;}
    public void setSellerLevelGt(Integer sellerLevelGt) { this.sellerLevelGt = sellerLevelGt; }
    public UserSellerQuery sellerLevelGt(Integer sellerLevelGt) { this.sellerLevelGt = sellerLevelGt; return this; }

    public Integer getSellerLevelGte() {return sellerLevelGte;}
    public void setSellerLevelGte(Integer sellerLevelGte) { this.sellerLevelGte = sellerLevelGte; }
    public UserSellerQuery sellerLevelGte(Integer sellerLevelGte) { this.sellerLevelGte = sellerLevelGte; return this; }

    public Integer getSellerLevelLt() {return sellerLevelLt;}
    public void setSellerLevelLt(Integer sellerLevelLt) { this.sellerLevelLt = sellerLevelLt; }
    public UserSellerQuery sellerLevelLt(Integer sellerLevelLt) { this.sellerLevelLt = sellerLevelLt; return this; }

    public Integer getSellerLevelLte() {return sellerLevelLte;}
    public void setSellerLevelLte(Integer sellerLevelLte) { this.sellerLevelLte = sellerLevelLte; }
    public UserSellerQuery sellerLevelLte(Integer sellerLevelLte) { this.sellerLevelLte = sellerLevelLte; return this; }


    public Long getCreateTime() {return createTime;}
    public void setCreateTime(Long createTime) { this.createTime = createTime; }
    public UserSellerQuery createTime(Long createTime) { this.createTime = createTime; return this; }

    public List<Long> getCreateTimeIn() {return createTimeIn;}
    public void setCreateTimeIn(List<Long> createTimeIn) { this.createTimeIn = createTimeIn; }
    public UserSellerQuery createTimeIn(List<Long> createTimeIn) { this.createTimeIn = createTimeIn; return this; }
    public UserSellerQuery createTimeAppend(Long createTime) { if (createTimeIn == null) { createTimeIn = new ArrayList<>(); } createTimeIn.add(createTime); return this; }

    public Long getCreateTimeGt() {return createTimeGt;}
    public void setCreateTimeGt(Long createTimeGt) { this.createTimeGt = createTimeGt; }
    public UserSellerQuery createTimeGt(Long createTimeGt) { this.createTimeGt = createTimeGt; return this; }

    public Long getCreateTimeGte() {return createTimeGte;}
    public void setCreateTimeGte(Long createTimeGte) { this.createTimeGte = createTimeGte; }
    public UserSellerQuery createTimeGte(Long createTimeGte) { this.createTimeGte = createTimeGte; return this; }

    public Long getCreateTimeLt() {return createTimeLt;}
    public void setCreateTimeLt(Long createTimeLt) { this.createTimeLt = createTimeLt; }
    public UserSellerQuery createTimeLt(Long createTimeLt) { this.createTimeLt = createTimeLt; return this; }

    public Long getCreateTimeLte() {return createTimeLte;}
    public void setCreateTimeLte(Long createTimeLte) { this.createTimeLte = createTimeLte; }
    public UserSellerQuery createTimeLte(Long createTimeLte) { this.createTimeLte = createTimeLte; return this; }


    public Long getModifyTime() {return modifyTime;}
    public void setModifyTime(Long modifyTime) { this.modifyTime = modifyTime; }
    public UserSellerQuery modifyTime(Long modifyTime) { this.modifyTime = modifyTime; return this; }

    public List<Long> getModifyTimeIn() {return modifyTimeIn;}
    public void setModifyTimeIn(List<Long> modifyTimeIn) { this.modifyTimeIn = modifyTimeIn; }
    public UserSellerQuery modifyTimeIn(List<Long> modifyTimeIn) { this.modifyTimeIn = modifyTimeIn; return this; }
    public UserSellerQuery modifyTimeAppend(Long modifyTime) { if (modifyTimeIn == null) { modifyTimeIn = new ArrayList<>(); } modifyTimeIn.add(modifyTime); return this; }

    public Long getModifyTimeGt() {return modifyTimeGt;}
    public void setModifyTimeGt(Long modifyTimeGt) { this.modifyTimeGt = modifyTimeGt; }
    public UserSellerQuery modifyTimeGt(Long modifyTimeGt) { this.modifyTimeGt = modifyTimeGt; return this; }

    public Long getModifyTimeGte() {return modifyTimeGte;}
    public void setModifyTimeGte(Long modifyTimeGte) { this.modifyTimeGte = modifyTimeGte; }
    public UserSellerQuery modifyTimeGte(Long modifyTimeGte) { this.modifyTimeGte = modifyTimeGte; return this; }

    public Long getModifyTimeLt() {return modifyTimeLt;}
    public void setModifyTimeLt(Long modifyTimeLt) { this.modifyTimeLt = modifyTimeLt; }
    public UserSellerQuery modifyTimeLt(Long modifyTimeLt) { this.modifyTimeLt = modifyTimeLt; return this; }

    public Long getModifyTimeLte() {return modifyTimeLte;}
    public void setModifyTimeLte(Long modifyTimeLte) { this.modifyTimeLte = modifyTimeLte; }
    public UserSellerQuery modifyTimeLte(Long modifyTimeLte) { this.modifyTimeLte = modifyTimeLte; return this; }



    /**
     *  是否为空
     *  <p> 仅仅是每个字段的为空检测。若存在特殊空判，需要自行实现
     */
    public boolean isEmpty() {
        if (id != null) {return false;}
        if (idIn != null && !idIn.isEmpty()) {return false;}
        if (idGt != null ) {return false;}
        if (idGte != null ) {return false;}
        if (idLt != null ) {return false;}
        if (idLte != null ) {return false;}
        if (sellerName != null) {return false;}
        if (sellerNameIn != null && !sellerNameIn.isEmpty()) {return false;}
        if (sellerNameXLike != null && sellerNameXLike.isEmpty()) {return false;}
        if (sellerNameXLeft != null && sellerNameXLeft.isEmpty()) {return false;}
        if (sellerNameXRight != null && sellerNameXRight.isEmpty()) {return false;}
        if (sellerLevel != null) {return false;}
        if (sellerLevelIn != null && !sellerLevelIn.isEmpty()) {return false;}
        if (sellerLevelGt != null ) {return false;}
        if (sellerLevelGte != null ) {return false;}
        if (sellerLevelLt != null ) {return false;}
        if (sellerLevelLte != null ) {return false;}
        if (createTime != null) {return false;}
        if (createTimeIn != null && !createTimeIn.isEmpty()) {return false;}
        if (createTimeGt != null ) {return false;}
        if (createTimeGte != null ) {return false;}
        if (createTimeLt != null ) {return false;}
        if (createTimeLte != null ) {return false;}
        if (modifyTime != null) {return false;}
        if (modifyTimeIn != null && !modifyTimeIn.isEmpty()) {return false;}
        if (modifyTimeGt != null ) {return false;}
        if (modifyTimeGte != null ) {return false;}
        if (modifyTimeLt != null ) {return false;}
        if (modifyTimeLte != null ) {return false;}
        return true;
    }
    /**
     *  copy（注：这是浅拷贝）
     */
    public UserSellerQuery copy() {
        UserSellerQuery copy = new UserSellerQuery();
        copy.id = id;
        copy.idIn = idIn;
        copy.idGt = idGt;
        copy.idGte = idGt;
        copy.idLt = idLt;
        copy.idLte = idLte;
        copy.sellerName = sellerName;
        copy.sellerNameIn = sellerNameIn;
        copy.sellerNameXLike = sellerNameXLike;
        copy.sellerNameXLeft = sellerNameXLeft;
        copy.sellerNameXRight = sellerNameXRight;
        copy.sellerLevel = sellerLevel;
        copy.sellerLevelIn = sellerLevelIn;
        copy.sellerLevelGt = sellerLevelGt;
        copy.sellerLevelGte = sellerLevelGt;
        copy.sellerLevelLt = sellerLevelLt;
        copy.sellerLevelLte = sellerLevelLte;
        copy.createTime = createTime;
        copy.createTimeIn = createTimeIn;
        copy.createTimeGt = createTimeGt;
        copy.createTimeGte = createTimeGt;
        copy.createTimeLt = createTimeLt;
        copy.createTimeLte = createTimeLte;
        copy.modifyTime = modifyTime;
        copy.modifyTimeIn = modifyTimeIn;
        copy.modifyTimeGt = modifyTimeGt;
        copy.modifyTimeGte = modifyTimeGt;
        copy.modifyTimeLt = modifyTimeLt;
        copy.modifyTimeLte = modifyTimeLte;
        return copy;
    }
}
